import request from '@/utils/request'


// 品牌接口 
// 品牌管理接口
// GET /admin/product/baseTrademark/findBaseTrademarkByKeyword/{keyword}
// findBaseTrademarkByKeyword

// GET /admin/product/baseTrademark/get/{id}
// 获取BaseTrademark

// GET /admin/product/baseTrademark/getTrademarkList
// getTrademarkList

// POST /admin/product/baseTrademark/inner/findBaseTrademarkByTrademarkIdList
// findBaseTrademarkByTrademarkIdList

// DELETE /admin/product/baseTrademark/remove/{id}
// 删除BaseTrademark
export const reqDeleteTrademarkApi = (id) => request.delete(`/admin/product/baseTrademark/remove/${id}`)
// POST /admin/product/baseTrademark/save
// 新增BaseTrademark

// PUT /admin/product/baseTrademark/update
// 修改BaseTrademark

// GET /admin/product/baseTrademark/{page}/{limit}
// 分页列表

// 获取品牌类表数据
export const reqTrademarkListApi = (page, limit) => request.get(`/admin/product/baseTrademark/${page}/${limit}`)

// 添加品牌
export const reqAddUpdateTrademarkApi = (trademark) => {
    // 修改
    if (trademark.id) {
        return request.put(`/admin/product/baseTrademark/update`, trademark)
    } else {
        // 新增品牌
        return request.post(`/admin/product/baseTrademark/save`, trademark)
    }
}






// 商品分类接口 

// GET /admin/product/get/category1/{id}
// 获取一级分类

// GET /admin/product/get/category2/{id}
// 获取二级分类

// GET /admin/product/get/category3/{id}
// 获取三级分类

// GET /admin/product/getCategory1
// getCategory1

export const reqCategory1List = () => request.get(`/admin/product/getCategory1`)

// GET /admin/product/getCategory2/{category1Id}
// getCategory2

export const reqCategory2List = (category1Id) => request.get(`/admin/product/getCategory2/${category1Id}`)

// GET /admin/product/getCategory3/{category2Id}
// getCategory3

export const reqCategory3List = (category2Id) => request.get(`/admin/product/getCategory3/${category2Id}`)

// POST /admin/product/inner/findBaseCategory3ByCategory3IdList
// findBaseCategory3ByCategory3IdList

// DELETE /admin/product/removeCategory1/{id}
// 删除一级分类

// DELETE /admin/product/removeCategory2/{id}
// 删除二级分类

// DELETE /admin/product/removeCategory3/{id}
// 删除三级分类

// POST /admin/product/saveCategory1
// 新增一级分类

// POST /admin/product/saveCategory2
// 新增二级分类

// POST /admin/product/saveCategory3
// 新增三级分类

// PUT /admin/product/updateeCategory1
// 修改一级分类

// PUT /admin/product/updateeCategory2
// 修改二级分类

// PUT /admin/product/updateeCategory3
// 修改三级分类



// 商品基础属性接口
// GET /admin/product/attrInfoList/{category1Id}/{category2Id}/{category3Id}
// attrInfoList
// 获取平台属性接口
export const reqAttrList = (category1Id, category2Id, category3Id) => request.get(`/admin/product/attrInfoList/${category1Id}/${category2Id}/${category3Id}`)

// DELETE /admin/product/deleteAttr/{attrId}
// deleteAttr
// 删除平台属性
export const deleteAttr = (attrId) => request.delete(`/admin/product/deleteAttr/${attrId}`)

// GET /admin/product/getAttrValueList/{attrId}
// getAttrValueList

// POST /admin/product/saveAttrInfo
// saveAttrInfo
// 添加属性和属性值接口
export const reqAddAttr = (data) => request.post(`/admin/product/saveAttrInfo`, data)




// DELETE /admin/acl/user/batchRemove
// 根据id列表删除管理用户
/**
 * 批量删除多个用户
 * @param ids 多个用户id组成的数组
 * @returns 
 */
export const removeUsersApi = (ids) => request.delete(`/admin/acl/user/batchRemove`, {
    data: ids
});



// POST /admin/acl/user/doAssign
// 根据用户分配角色
/**
 * 给用户分配角色
 * @param userId 用户id
 * @param roleId 包含所有角色id的字符串 3,5,6
 * @returns 
 */
export const assignUserRoleListApi = (userId, roleId) => request.post(`/admin/acl/user/doAssign`, null, {
    params: {
        userId,
        roleId
    }
});



// GET /admin/acl/user/get/{id}
// 获取管理用户



// DELETE /admin/acl/user/remove/{id}
// 删除管理用户
/**
 * 删除用户
 * @param id 用户id 
 * @returns null
 */
export const removeUserApi = (id) => request.delete(`/admin/acl/user/remove/${id}`);



// POST /admin/acl/user/save
// 新增管理用户
// PUT /admin/acl/user/update
// 修改管理用户
/**
 * 添加或更新用户
 * @param user 用户对象
 * @returns null
 */
export const saveOrUpdateUserApi = (user) => {
    if (user.id) {
        return request.put(`/admin/acl/user/update`, user);
    } else {
        return request.post(`/admin/acl/user/save`, user);
    }
};



// GET /admin/acl/user/toAssign/{userId}
// 根据用户获取角色数据
/**
 * 获取用户角色列表
 * @param userId 用户id
 * @returns UserRoleListModel
 */
export const getUserRoleListApi = (userId) => request.get(`/admin/acl/user/toAssign/${userId}`);



// GET /admin/acl/user/{page}/{limit}
// 获取管理用户分页列表
/**
 * 获取用户分页列表
 * @param page 页码
 * @param limit 每页数量
 * @param searchParams 包含搜索条件的对象 {username: 'xxx'}
 * @returns UserPageListModel
 */
export const getUserListApi = (page, limit, searchParams) => request.get(`/admin/acl/user/${page}/${limit}`, {
    params: searchParams
})